{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "已爬取第1页\n",
      "已爬取第2页\n",
      "已爬取第3页\n",
      "已爬取第4页\n",
      "已爬取第5页\n",
      "已爬取第6页\n",
      "已爬取第7页\n",
      "已爬取第8页\n",
      "已爬取第9页\n",
      "已爬取第10页\n",
      "已爬取第11页\n",
      "已爬取第12页\n",
      "已爬取第13页\n",
      "已爬取第14页\n",
      "已爬取第15页\n",
      "已爬取第16页\n",
      "已爬取第17页\n",
      "已爬取第18页\n",
      "已爬取第19页\n",
      "已爬取第20页\n",
      "已爬取第21页\n",
      "已爬取第22页\n",
      "已爬取第23页\n",
      "已爬取第24页\n",
      "已爬取第25页\n",
      "已爬取第26页\n",
      "已爬取第27页\n",
      "已爬取第28页\n",
      "已爬取第29页\n",
      "已爬取第30页\n",
      "已爬取第31页\n",
      "已爬取第32页\n",
      "已爬取第33页\n",
      "已爬取第34页\n",
      "已爬取第35页\n",
      "已爬取第36页\n",
      "已爬取第37页\n",
      "已爬取第38页\n",
      "已爬取第39页\n",
      "已爬取第40页\n",
      "已爬取第41页\n",
      "已爬取第42页\n",
      "已爬取第43页\n",
      "已爬取第44页\n",
      "已爬取第45页\n",
      "已爬取第46页\n",
      "已爬取第47页\n",
      "已爬取第48页\n",
      "已爬取第49页\n",
      "第50页有误\n",
      "已爬取第51页\n",
      "已爬取第52页\n",
      "已爬取第53页\n",
      "已爬取第54页\n",
      "已爬取第55页\n",
      "已爬取第56页\n",
      "已爬取第57页\n",
      "已爬取第58页\n",
      "已爬取第59页\n",
      "已爬取第60页\n",
      "已爬取第61页\n",
      "已爬取第62页\n",
      "已爬取第63页\n",
      "已爬取第64页\n",
      "已爬取第65页\n",
      "已爬取第66页\n",
      "已爬取第67页\n",
      "已爬取第68页\n",
      "已爬取第69页\n",
      "已爬取第70页\n",
      "已爬取第71页\n",
      "已爬取第72页\n",
      "已爬取第73页\n",
      "已爬取第74页\n",
      "已爬取第75页\n",
      "已爬取第76页\n",
      "已爬取第77页\n",
      "已爬取第78页\n",
      "已爬取第79页\n",
      "已爬取第80页\n",
      "已爬取第81页\n",
      "已爬取第82页\n",
      "已爬取第83页\n",
      "已爬取第84页\n",
      "已爬取第85页\n",
      "已爬取第86页\n",
      "已爬取第87页\n",
      "已爬取第88页\n",
      "已爬取第89页\n",
      "已爬取第90页\n",
      "已爬取第91页\n",
      "已爬取第92页\n",
      "已爬取第93页\n",
      "已爬取第94页\n",
      "已爬取第95页\n",
      "已爬取第96页\n",
      "已爬取第97页\n",
      "已爬取第98页\n",
      "已爬取第99页\n",
      "已爬取第100页\n",
      "已爬取第101页\n",
      "已爬取第102页\n",
      "已爬取第103页\n",
      "已爬取第104页\n",
      "已爬取第105页\n",
      "已爬取第106页\n",
      "已爬取第107页\n",
      "已爬取第108页\n",
      "已爬取第109页\n",
      "已爬取第110页\n",
      "已爬取第111页\n",
      "已爬取第112页\n",
      "已爬取第113页\n",
      "已爬取第114页\n",
      "已爬取第115页\n",
      "已爬取第116页\n",
      "已爬取第117页\n",
      "已爬取第118页\n",
      "已爬取第119页\n",
      "已爬取第120页\n",
      "已爬取第121页\n",
      "已爬取第122页\n",
      "已爬取第123页\n",
      "已爬取第124页\n",
      "已爬取第125页\n",
      "已爬取第126页\n",
      "已爬取第127页\n",
      "已爬取第128页\n",
      "已爬取第129页\n",
      "已爬取第130页\n",
      "已爬取第131页\n",
      "已爬取第132页\n",
      "已爬取第133页\n",
      "已爬取第134页\n",
      "已爬取第135页\n",
      "已爬取第136页\n",
      "已爬取第137页\n",
      "已爬取第138页\n",
      "已爬取第139页\n",
      "已爬取第140页\n",
      "已爬取第141页\n",
      "已爬取第142页\n",
      "已爬取第143页\n",
      "已爬取第144页\n",
      "已爬取第145页\n",
      "已爬取第146页\n",
      "已爬取第147页\n",
      "已爬取第148页\n",
      "已爬取第149页\n",
      "已爬取第150页\n",
      "已爬取第151页\n",
      "已爬取第152页\n",
      "已爬取第153页\n",
      "已爬取第154页\n",
      "已爬取第155页\n",
      "已爬取第156页\n",
      "已爬取第157页\n",
      "已爬取第158页\n",
      "已爬取第159页\n",
      "已爬取第160页\n",
      "已爬取第161页\n",
      "已爬取第162页\n",
      "已爬取第163页\n",
      "已爬取第164页\n",
      "已爬取第165页\n",
      "已爬取第166页\n",
      "已爬取第167页\n",
      "已爬取第168页\n",
      "已爬取第169页\n",
      "已爬取第170页\n",
      "已爬取第171页\n",
      "已爬取第172页\n",
      "已爬取第173页\n",
      "已爬取第174页\n",
      "已爬取第175页\n",
      "已爬取第176页\n",
      "已爬取第177页\n",
      "已爬取第178页\n",
      "已爬取第179页\n",
      "已爬取第180页\n",
      "已爬取第181页\n",
      "已爬取第182页\n",
      "已爬取第183页\n",
      "已爬取第184页\n",
      "已爬取第185页\n",
      "已爬取第186页\n",
      "已爬取第187页\n",
      "已爬取第188页\n",
      "已爬取第189页\n",
      "已爬取第190页\n",
      "已爬取第191页\n",
      "已爬取第192页\n",
      "已爬取第193页\n",
      "已爬取第194页\n",
      "已爬取第195页\n",
      "已爬取第196页\n",
      "已爬取第197页\n",
      "已爬取第198页\n",
      "已爬取第199页\n",
      "已爬取第200页\n",
      "已爬取第201页\n",
      "已爬取第202页\n",
      "已爬取第203页\n",
      "已爬取第204页\n",
      "已爬取第205页\n",
      "已爬取第206页\n",
      "已爬取第207页\n",
      "已爬取第208页\n",
      "已爬取第209页\n",
      "已爬取第210页\n",
      "已爬取第211页\n",
      "已爬取第212页\n",
      "已爬取第213页\n",
      "已爬取第214页\n",
      "已爬取第215页\n",
      "已爬取第216页\n",
      "已爬取第217页\n",
      "已爬取第218页\n",
      "已爬取第219页\n",
      "已爬取第220页\n",
      "已爬取第221页\n",
      "已爬取第222页\n",
      "已爬取第223页\n",
      "已爬取第224页\n",
      "已爬取第225页\n",
      "已爬取第226页\n",
      "已爬取第227页\n",
      "已爬取第228页\n",
      "已爬取第229页\n",
      "已爬取第230页\n",
      "已爬取第231页\n",
      "已爬取第232页\n",
      "已爬取第233页\n",
      "已爬取第234页\n",
      "已爬取第235页\n",
      "已爬取第236页\n",
      "已爬取第237页\n",
      "已爬取第238页\n",
      "已爬取第239页\n",
      "已爬取第240页\n",
      "已爬取第241页\n",
      "已爬取第242页\n",
      "已爬取第243页\n",
      "已爬取第244页\n",
      "已爬取第245页\n",
      "已爬取第246页\n",
      "已爬取第247页\n",
      "已爬取第248页\n",
      "已爬取第249页\n",
      "已爬取第250页\n",
      "已爬取第251页\n",
      "已爬取第252页\n",
      "已爬取第253页\n",
      "已爬取第254页\n",
      "已爬取第255页\n",
      "已爬取第256页\n",
      "已爬取第257页\n",
      "已爬取第258页\n",
      "已爬取第259页\n",
      "已爬取第260页\n",
      "已爬取第261页\n",
      "已爬取第262页\n",
      "已爬取第263页\n",
      "已爬取第264页\n",
      "已爬取第265页\n",
      "已爬取第266页\n",
      "已爬取第267页\n",
      "已爬取第268页\n",
      "已爬取第269页\n",
      "已爬取第270页\n",
      "已爬取第271页\n",
      "已爬取第272页\n",
      "已爬取第273页\n",
      "已爬取第274页\n",
      "已爬取第275页\n",
      "已爬取第276页\n",
      "已爬取第277页\n",
      "已爬取第278页\n",
      "已爬取第279页\n",
      "已爬取第280页\n",
      "已爬取第281页\n",
      "已爬取第282页\n",
      "已爬取第283页\n",
      "已爬取第284页\n",
      "已爬取第285页\n",
      "已爬取第286页\n",
      "已爬取第287页\n",
      "已爬取第288页\n",
      "已爬取第289页\n",
      "已爬取第290页\n",
      "已爬取第291页\n",
      "已爬取第292页\n",
      "已爬取第293页\n",
      "已爬取第294页\n",
      "已爬取第295页\n",
      "已爬取第296页\n",
      "已爬取第297页\n",
      "已爬取第298页\n",
      "已爬取第299页\n",
      "已爬取第300页\n",
      "已爬取第301页\n",
      "已爬取第302页\n",
      "已爬取第303页\n",
      "已爬取第304页\n",
      "已爬取第305页\n",
      "已爬取第306页\n",
      "已爬取第307页\n",
      "已爬取第308页\n",
      "已爬取第309页\n",
      "已爬取第310页\n",
      "已爬取第311页\n",
      "已爬取第312页\n",
      "已爬取第313页\n",
      "已爬取第314页\n",
      "已爬取第315页\n",
      "已爬取第316页\n",
      "已爬取第317页\n",
      "已爬取第318页\n",
      "已爬取第319页\n",
      "已爬取第320页\n",
      "已爬取第321页\n",
      "已爬取第322页\n",
      "已爬取第323页\n",
      "已爬取第324页\n",
      "已爬取第325页\n",
      "已爬取第326页\n",
      "已爬取第327页\n",
      "已爬取第328页\n",
      "已爬取第329页\n",
      "已爬取第330页\n",
      "已爬取第331页\n",
      "已爬取第332页\n",
      "已爬取第333页\n",
      "已爬取第334页\n",
      "已爬取第335页\n",
      "已爬取第336页\n",
      "已爬取第337页\n",
      "已爬取第338页\n",
      "已爬取第339页\n",
      "已爬取第340页\n",
      "已爬取第341页\n",
      "已爬取第342页\n",
      "已爬取第343页\n",
      "已爬取第344页\n",
      "已爬取第345页\n",
      "已爬取第346页\n",
      "已爬取第347页\n",
      "已爬取第348页\n",
      "已爬取第349页\n",
      "已爬取第350页\n",
      "已爬取第351页\n",
      "已爬取第352页\n",
      "已爬取第353页\n",
      "已爬取第354页\n",
      "已爬取第355页\n",
      "已爬取第356页\n",
      "已爬取第357页\n",
      "已爬取第358页\n",
      "已爬取第359页\n",
      "已爬取第360页\n",
      "已爬取第361页\n",
      "已爬取第362页\n",
      "已爬取第363页\n",
      "已爬取第364页\n",
      "已爬取第365页\n",
      "已爬取第366页\n",
      "已爬取第367页\n",
      "已爬取第368页\n",
      "已爬取第369页\n",
      "已爬取第370页\n",
      "已爬取第371页\n",
      "已爬取第372页\n",
      "已爬取第373页\n",
      "已爬取第374页\n",
      "已爬取第375页\n",
      "已爬取第376页\n",
      "已爬取第377页\n",
      "已爬取第378页\n",
      "已爬取第379页\n",
      "已爬取第380页\n",
      "已爬取第381页\n",
      "已爬取第382页\n",
      "已爬取第383页\n",
      "已爬取第384页\n",
      "已爬取第385页\n",
      "已爬取第386页\n",
      "已爬取第387页\n",
      "已爬取第388页\n",
      "已爬取第389页\n",
      "已爬取第390页\n",
      "已爬取第391页\n",
      "已爬取第392页\n",
      "已爬取第393页\n",
      "已爬取第394页\n",
      "已爬取第395页\n",
      "已爬取第396页\n",
      "已爬取第397页\n",
      "已爬取第398页\n",
      "已爬取第399页\n",
      "已爬取第400页\n",
      "已爬取第401页\n",
      "已爬取第402页\n",
      "已爬取第403页\n",
      "已爬取第404页\n",
      "已爬取第405页\n",
      "已爬取第406页\n",
      "已爬取第407页\n",
      "已爬取第408页\n",
      "已爬取第409页\n",
      "已爬取第410页\n",
      "已爬取第411页\n",
      "已爬取第412页\n",
      "已爬取第413页\n",
      "已爬取第414页\n",
      "已爬取第415页\n",
      "已爬取第416页\n",
      "已爬取第417页\n",
      "已爬取第418页\n",
      "已爬取第419页\n",
      "已爬取第420页\n",
      "已爬取第421页\n",
      "已爬取第422页\n",
      "已爬取第423页\n",
      "已爬取第424页\n",
      "已爬取第425页\n",
      "已爬取第426页\n",
      "已爬取第427页\n",
      "已爬取第428页\n",
      "已爬取第429页\n",
      "已爬取第430页\n",
      "已爬取第431页\n",
      "已爬取第432页\n",
      "已爬取第433页\n",
      "已爬取第434页\n",
      "已爬取第435页\n",
      "已爬取第436页\n",
      "已爬取第437页\n",
      "已爬取第438页\n",
      "已爬取第439页\n",
      "已爬取第440页\n",
      "已爬取第441页\n",
      "已爬取第442页\n",
      "已爬取第443页\n",
      "已爬取第444页\n",
      "已爬取第445页\n",
      "已爬取第446页\n",
      "已爬取第447页\n",
      "已爬取第448页\n",
      "已爬取第449页\n",
      "已爬取第450页\n",
      "已爬取第451页\n",
      "已爬取第452页\n",
      "已爬取第453页\n",
      "已爬取第454页\n",
      "已爬取第455页\n",
      "已爬取第456页\n",
      "已爬取第457页\n",
      "已爬取第458页\n",
      "已爬取第459页\n",
      "已爬取第460页\n",
      "已爬取第461页\n",
      "已爬取第462页\n",
      "已爬取第463页\n",
      "已爬取第464页\n",
      "已爬取第465页\n",
      "已爬取第466页\n",
      "已爬取第467页\n",
      "已爬取第468页\n",
      "已爬取第469页\n",
      "已爬取第470页\n",
      "已爬取第471页\n",
      "已爬取第472页\n",
      "已爬取第473页\n",
      "已爬取第474页\n",
      "已爬取第475页\n",
      "已爬取第476页\n",
      "已爬取第477页\n",
      "已爬取第478页\n",
      "已爬取第479页\n",
      "已爬取第480页\n",
      "已爬取第481页\n",
      "已爬取第482页\n",
      "已爬取第483页\n",
      "已爬取第484页\n",
      "第485页有误\n",
      "已爬取第486页\n",
      "已爬取第487页\n",
      "已爬取第488页\n",
      "已爬取第489页\n",
      "已爬取第490页\n",
      "已爬取第491页\n",
      "已爬取第492页\n",
      "第493页有误\n",
      "已爬取第494页\n",
      "已爬取第495页\n",
      "已爬取第496页\n",
      "已爬取第497页\n",
      "已爬取第498页\n",
      "已爬取第499页\n",
      "已爬取第500页\n",
      "已爬取第501页\n",
      "已爬取第502页\n",
      "已爬取第503页\n",
      "已爬取第504页\n",
      "已爬取第505页\n",
      "已爬取第506页\n",
      "已爬取第507页\n",
      "已爬取第508页\n",
      "已爬取第509页\n",
      "已爬取第510页\n",
      "已爬取第511页\n",
      "已爬取第512页\n",
      "已爬取第513页\n",
      "已爬取第514页\n",
      "已爬取第515页\n",
      "已爬取第516页\n",
      "已爬取第517页\n",
      "已爬取第518页\n",
      "已爬取第519页\n",
      "已爬取第520页\n",
      "已爬取第521页\n",
      "已爬取第522页\n",
      "已爬取第523页\n",
      "已爬取第524页\n",
      "已爬取第525页\n",
      "已爬取第526页\n",
      "已爬取第527页\n",
      "已爬取第528页\n",
      "已爬取第529页\n",
      "已爬取第530页\n",
      "已爬取第531页\n",
      "已爬取第532页\n",
      "已爬取第533页\n",
      "已爬取第534页\n",
      "已爬取第535页\n",
      "已爬取第536页\n",
      "已爬取第537页\n",
      "已爬取第538页\n",
      "已爬取第539页\n",
      "已爬取第540页\n",
      "已爬取第541页\n",
      "已爬取第542页\n",
      "已爬取第543页\n",
      "已爬取第544页\n",
      "已爬取第545页\n",
      "已爬取第546页\n",
      "已爬取第547页\n",
      "已爬取第548页\n",
      "已爬取第549页\n",
      "已爬取第550页\n",
      "已爬取第551页\n",
      "已爬取第552页\n",
      "已爬取第553页\n",
      "已爬取第554页\n",
      "已爬取第555页\n",
      "已爬取第556页\n",
      "已爬取第557页\n",
      "已爬取第558页\n",
      "已爬取第559页\n",
      "已爬取第560页\n",
      "已爬取第561页\n",
      "已爬取第562页\n",
      "已爬取第563页\n",
      "已爬取第564页\n",
      "已爬取第565页\n",
      "已爬取第566页\n",
      "已爬取第567页\n",
      "已爬取第568页\n",
      "已爬取第569页\n",
      "已爬取第570页\n",
      "已爬取第571页\n",
      "已爬取第572页\n",
      "已爬取第573页\n",
      "已爬取第574页\n",
      "已爬取第575页\n",
      "已爬取第576页\n",
      "已爬取第577页\n",
      "已爬取第578页\n",
      "已爬取第579页\n",
      "已爬取第580页\n",
      "已爬取第581页\n",
      "已爬取第582页\n",
      "已爬取第583页\n",
      "已爬取第584页\n",
      "已爬取第585页\n",
      "已爬取第586页\n",
      "已爬取第587页\n",
      "已爬取第588页\n",
      "已爬取第589页\n",
      "已爬取第590页\n",
      "已爬取第591页\n",
      "已爬取第592页\n",
      "已爬取第593页\n",
      "已爬取第594页\n"
     ]
    }
   ],
   "source": [
    "import requests as rqs\n",
    "import pandas as pd\n",
    "from bs4 import BeautifulSoup\n",
    "import time\n",
    "\n",
    "headers = {\"User-Agent\":\"Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/70.0.3538.110 Safari/537.36\"}\n",
    "rst = []\n",
    "\n",
    "for i in range(1,2492):\n",
    "    try:\n",
    "        url = \"http://www.xinfadi.com.cn/marketanalysis/0/list/\"+str(i)+\".shtml\"\n",
    "        r = rqs.get(url,headers = headers)\n",
    "        soup = BeautifulSoup(r.text,\"lxml\")\n",
    "        data_list = soup.find_all(\"tr\",class_ = \"tr_color\")\n",
    "        for eachone in data_list:\n",
    "            name = eachone.contents[0].text\n",
    "            min_price = eachone.contents[1].text.strip()\n",
    "            mean_price = eachone.contents[2].text.strip()\n",
    "            max_price = eachone.contents[3].text.strip()\n",
    "            standard = eachone.contents[4].text\n",
    "            unit = eachone.contents[5].text\n",
    "            date = eachone.contents[6].text.strip()\n",
    "            list1 = [date,name,min_price,max_price,mean_price,standard,unit]\n",
    "            rst.append(list1)\n",
    "        time.sleep(0.2)\n",
    "        print(\"已爬取第%d页\"%i)\n",
    "    except:\n",
    "        print(\"第%d页有误\"%i)\n",
    "\n",
    "\n",
    "dataf = pd.DataFrame(rst,columns = [\"日期\",\"名称\",\"最低售价\",\"最高售价\",\"均价\",\"规格\",\"单位\"])\n",
    "local_time = time.strftime('%Y.%m.%d',time.localtime(time.time()))\n",
    "excel = local_time + \"-\"+\"新发地菜价\"\n",
    "file = \"C:\\\\Users\\\\fengy\\\\Desktop\\\\数据存储\\\\\"+excel+\".xlsx\"\n",
    "dataf.to_excel(file)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": []
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.5"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
